import { rawGet, put, rawDelete } from "./crud";
export function getMObj(id) {
    if (!id) {
        id = "ALL"
    }
    return new Promise((re, rej) => {
        rawGet("api/mobj/" + id).then(res => {
            if (res && res.data && res.data.result) {
                re(res.data.result)
            } else {
                rej("no data ")
            }
        }).catch(err => {
            rej(err)
        })
    })

}

export function modifyMObj(obj) {

    return new Promise((re, rej) => {
        put("api/mobj/", obj).then(res => {
            if (res && res.data && res.data.result) {
                re(res.data.result)
            } else {
                rej("no data ")
            }
        }).catch(err => {
            rej(err)
        })
    })

}

export function forceTemplate(){
    return put("api/extend/api/m_smartBoxForPolice?qmap[ctype]=template","")
}
import {Base64} from 'js-base64';
export function getTemplate(){
    
    return new Promise((re,rej)=>{
        rawGet("api/extend/api/m_smartBoxForPolice?qmap[ctype]=template","").then(res=>{
            if(res && res.data &&  res.data.result && res.data.result){
                if(res.data.result.body && res.data.result.body != null && res.data.result.body != 'null'){
                    let s = Base64.decode(res.data.result.body)
                    re(JSON.parse(s))
                }
                re({})
              
            }else{
                re([])
            }
        }).catch(err=>{
            rej(err)
        })
    })
}

export function removeMObj(id) {

    return new Promise((re, rej) => {
        rawDelete("api/mobj/" + id).then(res => {
            if (res && res.data && res.data.result) {
                re(res.data.result)
            } else {
                rej("no data ")
            }
        }).catch(err => {
            rej(err)
        })
    })

}

export default {
    removeMObj,
    modifyMObj,
    getMObj,
    forceTemplate,
    getTemplate,

}